abstract class $RO_MULTIMAP{K,E} < $CONTAINER{E} |
---|
**** | A mapping form K -> bags of E. A multimap binds elements of type `E' to keys of type `K'. In contrast to $MAP{K,E} there can be more than one element be bound to a key. It is essentially a one-to-many mapping, that allows for repetitions. i.e. it is a map from K->$BAG{E} |
$CONTAINER{_} | $ELT{_} | $ELT |
$MULTIMAP{_,_} | H_MULTIMAP{_,_} | MULTIMAP{_,_} |
equals(m: $RO_MULTIMAP{K,E}): BOOL; |
---|
**** | Return true if all the key-value pairs are found in the same numbers in "m" |
has_elt(e: E): BOOL; |
---|
**** | Return true if the map has the element "e" |
has_ind(k: K): BOOL; |
---|
**** | Returns true if the map has the element "k" |
ind!: K; |
---|
**** | Yields all keys which are bound in unspecifierd order. |
n_inds: INT; |
---|
**** | Returns the number of keys which are bound. |
n_targets(k:K): INT; |
---|
**** | Returns the number of elements bound to the index `k'. |
pair!: TUP{K,E}; |
---|
**** | Yields all bindings in unpecified order. |
size: INT; |
---|
**** | Returns the number of bindings in the dicitonary. |
target!(once k:K): E; |
---|
**** | Yields all elements wich are bound to 'k' in unspecified order. |
targets(k: K): $BAG{E}; |
---|
**** | Returns all the targets of the element "k" |